1. Field of the Invention
The present invention generally relates to data processing, and more particularly, to the modification of data through a logical framework.
2. Description of the Related Art
In commonly assigned U.S. patent application Ser. No. 10/083,075 (the '075 application), filed Feb. 26, 2002 entitled “Improved Application Flexibility Through Database Schema and Query Abstraction”, a framework was disclosed for logically viewing physical data. The framework of the '075 application provided a requesting entity (i.e., an end-user or application) with an abstract representation of physical data. In this way, the requesting entity is decoupled from the underlying physical data to be accessed. Logical queries based on the framework can be constructed without regard for the makeup of the physical data. Further, changes to the physical data do not necessitate changes to applications accessing the physical data.
In addition to accessing abstractly represented physical data (i.e., issuing queries against the data to receive results), it is desirable to modify (i.e., insert, update and delete) data based on the abstract data representation. However, changing a data repository requires a significant amount of knowledge about the underlying database schema. In a relational database, modifications to the database must be performed on a single table basis and a detailed knowledge about the column formats and applicable values is necessary. To ensure data integrity, database modifications must account for relationships between database tables (such as primary key/foreign key relationships) and must account for requirements that tables be updated in a certain order. In the case of an abstracted database, the knowledge for dealing with such lower-level logical operations must also be abstracted. Otherwise, the knowledge must be accounted for at the application level, thereby undermining a primary advantage achieved by abstract representation of data.
Therefore, what is needed is the ability to modify data based on an abstract data representation.